For years, enterprises and developers have sought an easy and affordable way to use cloud computing as a way to load and performance test their web-based applications. Business enterprises are also interested in real user measurement (RUM) data analysis that captures and collects data about present, real user experiences when actual users visit and navigate through a website or web application. Traditional analytical tools have been able to provide data analysis solutions that collect data about past events, it has been more problematic to deliver real-time business intelligence information based on actual mobile and desktop user experience as it occurs.
Technical professionals and business managers need a comprehensive solution to test, monitor and measure real user behavior to ensure customers get the most out of their app or site—whether it's mobile, on the web, or both. For an e-Commerce business or website owner, capturing and properly analyzing RUM information from a website has been a daunting task. In recent years, developers have attempted to solve this problem by creating software and analytic tools that can monitor real user experiences on websites in real-time. By way of example, U.S. Pat. No. 9,450,834 teaches a cloud-based RUM system and method for websites and web applications that provides a user with a graphical view that shows real-time performance information obtained from RUM data.
One of the difficulties with such systems is collecting and presenting efficient visualizations of RUM data obtained from the Web. Due to the very large volume of data collected, often involving tens of millions or even billions of user measurements, visualizing the interactions between such a large numbers of datapoints on a website can quickly exceed limits on memory, network capacity, CPU resources, and available pixels of display screens. Rendering such large numbers of RUM data beacons or nodes is extremely memory intensive. In addition, calculating the interactions between nodes within and across different beacon clusters is typically an O(n2) algorithm, which slows down CPU performance with the square of the number of nodes (n). Bandwidth constraints arise as the amount of data that needs to be transferred over the network to the client increases. Furthermore, even on a large display monitor having a resolution of 2560×1440 pixels, approximately 400,000 data points all spread out would completely cover the screen, making it virtually impossible for the user to notice any patterns.